home *** CD-ROM | disk | FTP | other *** search
/ Tech Arsenal 1 / Tech Arsenal (Arsenal Computer).ISO / tek-01 / oleo130s.zip / OLEO130S.TAR / oleo-1.3 / ref.h < prev    next >
C/C++ Source or Header  |  1993-02-10  |  4KB  |  101 lines

  1. #ifndef REFH
  2. #define REFH
  3.  
  4. /*    Copyright (C) 1992, 1993 Free Software Foundation, Inc.
  5.  
  6. This program is free software; you can redistribute it and/or modify
  7. it under the terms of the GNU General Public License as published by
  8. the Free Software Foundation; either version 2, or (at your option)
  9. any later version.
  10.  
  11. This program is distributed in the hope that it will be useful,
  12. but WITHOUT ANY WARRANTY; without even the implied warranty of
  13. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  14. GNU General Public License for more details.
  15.  
  16. You should have received a copy of the GNU General Public License
  17. along with this software; see the file COPYING.  If not, write to
  18. the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
  19. /*  t. lord    Sun Aug  9 20:45:14 1992    */
  20.  
  21. #include "global.h"
  22. #include "cell.h"
  23.  
  24.  
  25.  
  26. struct cell;
  27.  
  28. /* Operations that add or remove cells to the sparse array
  29.  * may cause the (memory) addresses of other cells to change.
  30.  * Some cell pointers are privileged enough to be relocated.
  31.  * This is one.  The others are part of a stack of iteration 
  32.  * states created by nested calls to find_range etc.
  33.  *
  34.  * When this pointer is not NULL, the variables cur_row and cur_col
  35.  * MUST contain the (spreadsheet) address of my_cell.
  36.  */
  37. extern struct cell * my_cell;
  38.  
  39. #ifdef __STDC__
  40. extern void set_cell (CELLREF row, CELLREF col, char *string);
  41. extern char * new_value (CELLREF row, CELLREF col, char *string);
  42. extern char * set_new_value (CELLREF row, CELLREF col, int type, union vals *value);
  43. extern char * read_new_value (CELLREF row, CELLREF col, char *form, char *val);
  44. extern void move_cell (CELLREF rf, CELLREF cf, CELLREF rt, CELLREF ct);
  45. extern void copy_cell (CELLREF rf, CELLREF cf, CELLREF rt, CELLREF ct);
  46. extern void flush_old_value (void);
  47. extern void add_ref (CELLREF row, CELLREF col);
  48. extern void add_range_ref (struct rng *rng);
  49. extern void flush_refs (void);
  50. extern void add_ref_to (int whereto);
  51. extern void add_ref_to (int whereto);
  52. extern void shift_outside (struct rng *fm, int dn, int ov);
  53. extern void shift_formula (int r, int c, int dn, int ov);
  54. extern void cell_alarm (void);
  55. extern void flush_all_timers (void);
  56. extern void add_timer_ref (int whereto);
  57. extern void init_refs (void);
  58. extern void push_refs (struct ref_fm *ref);
  59. extern void push_cell (CELLREF row, CELLREF col);
  60. extern int eval_next_cell (void);
  61. extern char * new_var_value (char *v_name, int v_namelen, char *v_newval);
  62. extern void for_all_vars (void (*func) (char *, struct var *));
  63. extern struct var * find_or_make_var (char *string, int len);
  64. extern struct var * find_var (char *string, int len);
  65. extern void add_var_ref (void * vvar);
  66. extern void flush_variables (void);
  67.  
  68. #else
  69. extern void set_cell ();
  70. extern char * new_value ();
  71. extern char * set_new_value ();
  72. extern char * read_new_value ();
  73. extern void move_cell ();
  74. extern void copy_cell ();
  75. extern void flush_old_value ();
  76. extern void add_ref ();
  77. extern void add_range_ref ();
  78. extern void flush_refs ();
  79. extern void add_ref_to ();
  80. extern void add_ref_to ();
  81. extern void shift_outside ();
  82. extern void shift_formula ();
  83. extern void cell_alarm ();
  84. extern void flush_all_timers ();
  85. extern void add_timer_ref ();
  86. extern void init_refs ();
  87. extern void push_refs ();
  88. extern void push_cell ();
  89. extern int eval_next_cell ();
  90. extern char * new_var_value ();
  91. extern void for_all_vars ();
  92. extern struct var * find_or_make_var ();
  93. extern struct var * find_var ();
  94. extern void add_var_ref ();
  95. extern void flush_variables ();
  96.  
  97. #endif
  98.  
  99.  
  100. #endif
  101.